This is a sample document file which can be made into .COM. TXTRUN ETXTRUNDC.TXT will Edit this The width of this box is determined by the length of the longest line here. The height is determined by the presence of the form feed character, (chr(12)). Replace all tabs by spaces ( keys). To change the box size, turn CAPS LOCK ON and move the cursor keys. To move the box around, turn CAPS LOCK OFF and SCROLL LOCK ON. Typing control-left (^left) and control-right (^right) changes the box types. (or redefine your own with the "BOX" parameter) These work while editing but once a .COM software, only moving the boxes around works. If there are reverse letter areas on screen and both CAPS and SCROLL are OFF, you can select them by moving the cursor keys and typing to call other pages/softwares. (explained much later) Control-PgDn (^PgDn) and control-PgUp (^PgUp) to see other pages. Regular PgDn, PgUp, left/right cursor do not work yet. Control and alt key combinations do not work once this is a .COM software. To exit software when .COM, while in page 1. To go to edit menu (page 0) while Editing, ^Home in any page or ^PgUp/ in page 1. ###This is page 1.### (altP turns page display below ON/OFF) Define this as the right page for page 1 above. How?: -------- -------- |page 1| right cursor-> | here | -------- <-left cursor -------- Press down on the alt key here and while keeping it pressed down, type "5" on the numeric keypad (NOT the "5" above the letters "RT"). Now release the "5" key and the alt key (this is called "alt-5" here). Now ^PgUp back to page 1 and press down on the alt key and also press down on the right cursor key and then let go of both keys. You can remember this as the alt-right key combination. (these control "^" and alt functions don't work when this becomes a .COM software.) Now, when you press down on the right cursor key while in page 1, you get this page. Press down on the left cursor key while here and you go back to page 1. (You can change this bidirectional (two way) into unidirectional (one way) access as explained much later.) Alt-Home (press down on the alt key and also press down on the home key, then let go of both keys) explains these also. ###This is page 2.### Define this as the left page for page 1 above. How?: -------- -------- | here | right cursor-> |page 1| -------- <-left cursor -------- Press down on the alt key here and while keeping it pressed down, type "5" on the numeric keypad (NOT the "5" above the letters "RT") and release the alt key (this combination is called "alt-5" here). Now ^PgUp twice to go to page 1 and alt/left-cursor key and then release both keys. Remember this as the alt-left key combination. Now, when you press down on the left cursor key while in page 1, you get this page. Press down on the right cursor key while here and you go back to page 1. To check that the page is defined, type the alt-home key combination and it tells you the pages accessible and other helps. You may be bored by now, but, key combinations using the alt and control keys do not work once you change this into a .COM software with the "C" option while in the editing menu page 0. ###This is page 3.### Define this as the next page (PgDn) for page 1 above. How:? -------- Alt-5 in this page (not the "5" above the |page 1| letters "RT") to store this page number. Now -------- ^PgUp three times to go to page 1 and press down |PgDn ^ on the alt and the PgDn key combination and then -------- V |PgUp release both keys. Remember this as the alt-PgDn | here | key combination. -------- Now, when you press down on the PgDn key while in page 1, you get this page. Press down on the PgUp key while here to go back to page 1. If you're bothered by the music sign at the end of each line, run this program with the N32 option. The default of N13 option makes each page display the end-of-line code as music signs, but changing it to N32 makes display as spaces ( or chr(32)). (Once this is a .COM software, this cannot be changed.) ###This is page 4.### Like to define a previous page (PgUp) for page 1 above? -------- This doesn't make sense visually, since page | here | 1 above is the first page and the entrance, but -------- this procedure can be used for any other page, |PgDn ^ and is useful when making a dungeons and dragons -------- V |PgUp maze where the entrance need not be on the |page 1| outside of an area or a house. -------- Press down on alt-5 (not the "5" on "RT") here to store this page number. Now ^PgDn four times to go to page 1 and alt-PgUp. Now, when you press down on the PgUp key while in page 1, you get this page. Press down on the PgDn key while here and you get back to page 1. If this doesn't make sense to you, try drawing a simple page outlay (a map) with a pen and paper. Why are PgUp/PgDn used instead of up/down cursors? Because most menuing softwares expect PgUp/PgDn to access different pages. So why are left/right cursor keys used? Because pull-down menuing systems expect left/right cursor keys to access different menu selections. ###This is page 5.### Removing the pages accessed with right/left cursor, PgUp/PgDn. On page 2, you defined --v Now try going to page 1 and press down on the alt key and while -------- -------- keeping it pressed down, also type |page 1| right cursor-> |page 2| followed by the right cursor -------- <-left cursor -------- key (in other words, alt-16 or alt-end-right) and then release the alt key after you type on both the key and the right cursor. The access has now been removed from page 1 so that it's now this. Page 2 can still go to page 1 by -------- -------- pressing down on the left cursor, |page 1| |page 2| but page 1 can no longer access -------- <-left cursor -------- page 2. To remove page 2's access to page 1 via the left cursor, go to page 2 and type alt-end-left (alt-14). Remember to keep pressing down on the alt key while typing both the key and the left cursor key. This is useful for "end"ing access between pages. Similarly, alt-end-left, alt-end-PgUp and alt-end-PgDn will end the access in those directions. Alt-home explains this as well. Note: If you have any tab, they are changed into single spaces. One way maze for dungeons and dragons. (alt-end) If you wanted to make one way access to begin with, rather than making a two way access, then type -------- -------- alt-end in the beginning. Assuming |page 1| right cursor-> |page 2| that the access between page 1 and -------- -------- page 2 has been "end"ed from both ways, go to page 2 and type alt-5 again. Now go to page 1 and type alt-right. This time, the access is one way from page 1 to page 2, there is no access from page 2 back to page 1, since the alt-end made it into a one way access. (^PgUp/^PgDn lets you access both, but not once this becomes a .COM software) Notice that the message on the top row of your screen now tells you that access is one way. Pressing down on the alt-end key combination again will turn this back into a two way access. This may sound boring by now, but remember to keep pressing down on the alt key while pressing down on the other key(s) requested. Note: Running this program with the ONE option (not zero "0") for ONE way has the same effect as typing alt-end here. Turning this into a title. You've noticed that the top line on each of these pages seem to be positioned as a title, but the line is not on the box itself. Type the alt-T combination. This is the Title on/off feature to turn the top line on each page into a title. If the title was indented with spaces, those spaces are ignored, but you must have some text which can be a title. If you have REVERSE CHARACTER HIGH-LIGHTED SELECTIONS, use this feature AFTER they are ALL DEFINED. As with all features activated with the control "^" key and alt key combinations, they do not work once this is a .COM software. Notice that each of these lines end with a music sign to indicate the end of each line by default (the "N" option could have been used to make it display as anything else, such as N32 to display nothing, since chr(32) is the " " code.), but the title does not contain this symbol no matter what you do. Also note that the height of the menu will also decrease by one row to compensate for the lack of one line of text to display. The bottom box appears twice to visually confirms this, but will not appear once you go to other regular pages. MAKING THIS BOX GROW HORIZONTALLY OR VERTICALLY OR BOTH DIRECTIONS By default, these pages pop up, even though you can manually increase or decrease the size of the boxes. If you want this page to open up like a paper page horizontally (in other words, in this direction ------>) type alt-H. This page will respond by doing just that, and will continue to do so whenever you go to this page. If you want this page to open up like a paper page vertically (in other words, in this direction |), type alt-V. V Type alt-H and alt-V respectively twice to turn this feature OFF. If you type both once each, then the page opens in both directions. The page opening horizontally in this way ---> is more dramatic and noticeable since it will open up to 78 columns wide, while the page opening vertically is only dramatic on VGA/EGA with 50/43 rows. The flickering effect may be annoying to those with CGA monitors. This may not work on some palm-tops with 40 columns or less. MOVING THE BOX Turn the SCROLL LOCK ON and the CAPS LOCK OFF and move this box down and to the right, as much as your screen will let you see. Now type the alt-M combination. Did you see this move from left top to below? That's the Move feature. a short pause If you use a monitor with CGA/monochrome with 25 rows mode only, you noticed that with SCROLL LOCK ON or CAPS LOCK ON, the pages can still be made to open or move to 50 rows. A goof-up in programming? No, it was made this way so that you can prepare a menu software which works on a VGA 50 rows monitor using a 25 rows monitor (though you can't see the bottom half) It also allows secretaries with 25 rows monitors to see some texts, while those with 50 rows monitors to see other things. (this is not meant to be a security feature, though such things can be added) This program is big because it can do a lot of things. Care to take a coffee/tea break now? Type ^home to go to the page 0 menu and type "S" to save the intermediary changes (file name extension is .EDT by default). If a blackout occurred or you must turn off your computer, edit this intermediary file as in "TXTRUN Eyourfile.EDT". CHANGING ATTRIBUTE (COLOR/COLOUR) If you have a color monitor, then you can select different colors to fill different needs. For example, press down on the alt key and while keeping it pressed down, also press down on the "a" key. The combination is referred to here as alt-A, but don't press down on the shift key to make it capital "A". It is in capital so that you won't try to look for one key with the letters "alt-a" on it. Move the blinking cursor on screen by pressing down on the cursor keys. will get you out, while will make this page that attribute. This feature remembers the last attributed selected. If you don't have a color monitor, then the letters will be regular, reversed or blinking. With a green monitor, most will be striped and not very useful. This feature is called an "attribute", rather than alt-C for "color ("colour" in Canada, Britain etc) to signify that it will not appear as color to those without color monitors. (this fact may seem obvious to most of you, but a few new PC users complain if this was called "color" and they can't see color on their amber screen.) The next page talks about nested pages. You can think of it as multiple-layers of pages ........... as graphically illustrated here. . level 2 . ........... .........PgUp......... Up to now, you were at ^ | . / . level 1, defining pages | v .left<--------->right. <--accessible by left/right ........... ........./PgDn........ cursors and PgUp/PgDn. Now-> . level 1 . ........... You go from one level to the next level by selecting a selection which is high-lighted in reverse character (dark letter on bright background.) You can't see it yet on the next page because you must define it. It uses the ^S Screen code (chr(19), not caret "^", "S"). The next page has ^SC before each line which can be made into such selection to go to the next level up. That's control-S followed by capital or small letter "C". If your editor cannot insert ^S in your text, use anything else and run TXTRUN.EXE with the S option. For example: If your text doesn't contain exclamation mark "!" (chr(33)), then "TXTRUN S33 Eyourfile" will accept all "!" as ^S code. Calling pages as nested subroutines. First, go to page 1 and type alt-5 keys ("5" on the numeric keypad, not "5" above the letters "RT") then come back here. When you edit this page, the blinking cursor is not on the left top side, because of the ^SC combination present here to Call other pages as nested subroutines. (previous pages will display underneath if they overlap or next to the present page if there is no overlap now.) Turn OFF both SCROLL LOCK and CAPS LOCK and move the cursor keys. Alt-C at the selection to high-light with reverse characters, then cursor rightwards to define the length of reverse characters. Cursor leftwards to correct and . Now the alt-5 page stored can be accessed from here by moving the cursor to high-light this selection and ing here. Get back to this page by pressing the key. c call page one here c call page one here also c call page two here c try any other page here The reverse character selections appear correctly once all the lengths of reverse character high-lights are defined. Continuation of above. There are eight levels of nesting prepared, though the purpose is to make this feature behave like a pull down menu system, so that only one such level is expected to be used: At level 2, left/right cursor ........ <-left ........ <-left ........ on any reverse character .a page. cursor .a page. cursor .a page. selection to go to another ........ right-> ........ right-> ........ page. To get down to level 1 from level 2, you simply have to type at Any level 2 page by default. Running with the AOFF option prevents this so that you cannot go down one level by typing on Any page. With this option active, you can only to a level below at the specified page you went up at. Next is a discussion on running other Softwares, rather than displaying other pages using the reverse character high-lighted selections. The next page's text has the ^SS code combination to allow it. (that's control-S and the letter "S", not the caret character "^" followed by two capital ess "S" characters. It behaves identical to above, but is used to run other softwares, batch files and DOS commands such as DIR, RENAME, COPY etc. Softwares and directory commands. In case your editor cannot edit a line over 80 characters wide, the drive letter, subdirectory listing and software names are entered here while in TXTRUN's Edit mode. Defining the length of the reverse character high-light behaves identical to calling another level of pages with the subroutine calls of ^SC, but after you define them, TXTRUN will ask you what software name to run at this selection S let's run chkdsk.com here or s dir *.* s any other software you have S or rename etc. At the first left location, type drive letter and subdirectory where CHKDSK.COM is, such as D:\ROOT\CHKDSK.COM. At the first right location, try " DIR *.*". With "PDIR *.*", after displaying the file names, it Pauses for you to type any key. "2DIR *.*" will pause 2 seconds. ("1"-"9" for 1-9 seconds, or "0" for 10 seconds. "KDIR *.*" will Keep this page before running, rather than clearing the screen and placing the cursor on the left top first. SEE NEXT PAGE VIA ^PgDn BEFORE TESTING IT WITH . If you have over 256 KB free of the 640 KB of system memory, you can try testing it now, since TXTRUN now uses about 220 KB. If it doesn't work now, make the .COM software and then test. Then, your .COM software requires less than 100 KB. How much less depends on the DOS/TXTRUN version you use. You cannot run spread sheet softwares because they usually need the entire 640 KB space, but otherwise, this feature can be used to make a DOS shell software for people not experienced in using DOS features. Once you come back here after running your software (or batch file or DOS commands), you're left back on page 1. TXTRUN doesn't have to do this, but it emulates how the .COM software will act. The next page also has some more relevant information as well. You CANNOT define them staggered like this on the left. TXTRUN #1 #5 will reorganize them so that the #1 #5 #3 cursor keys will access them as #3 #2 #4 if they were really organized #2 #4 #7 like this on the right side --> #7 #8 #8 The calls to other subroutine pages (different levels or planes of pages) and running softwares or directory commands can be freely mixed and when this becomes a .COM, you can't tell the difference since the software names and directory commands are hidden from view. The Keep, Pause, and number of seconds to wait (1 - 10 seconds) features are designed so that TXTRUN can interact with the software you run if needed. As you've noticed, every time you try some feature or the cursor is on a selection, there is an appropriate prompt on the top row on your screen and pop ups guide you at all times. (All these helps were deemed necessary because TXTRUN v0.8 has so many features. If there is any bug (or what you feel should be called a bug), please report them. They will be corrected in the next version.) Calling pages with relative location comments Notice the comment above. Move the blinking cursor to different selections below and the comment changes also. Turn SCROLL LOCK ON: The comment moves with the ccall a page ccall another page, because it is set for ccall still another call again relative movement. The code "^S_00r" displays the lines which follow this as comments for above selections. The "00" for left top most location, "r" for relative to the present page. The box location itself is location 0,0. beyond location 9,9 is :, ;, <, =, >, ?, @, A, B, C, D, E, F, G, H, I,... 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 _00rYou can add a comment to each such selection above. "^S_##r" combination allows these to be displayed relative to the page or "^S_##x" for absolute location on screen. You must have enough lines to match the selections. Calling pages with absolute location comments Notice the comment below. Turn SCROLL LOCK ON: the comment will ccall one ccall two remain at the same location. ccall three ccall four Each comment below must be the same length, padded at the end with spaces if needed. If there are four selections, then there should be four lines below as well. _99aThis is one. This is two. This is three. This is four. Since this menu system is not graphic based, it's fast enough on PCs which are not 80386 or 80486 based, but is not compatible with MicroSoft Windows and other graphic interfaces. (many programs in this series of programs here are compatible with such interfaces) All the pages by default are in black and white for the benefit of those with non-color monitors. If you have EGA/VGA based systems, then instead of blinking letters, there may be extra fonts. With Hercules' Ramfont and active font drives, you will see different fonts. With color tables remapped, depending on the monitor brand, some colors and high-lighted reverse characters are not clear. Different laptops behave differently. This may not work on some palmtops which are not really PC compatible. Why not compensate for all the variations? Due to the bugs and many features in hardware/software combinations, no one can afford the decades and millions of dollars required. Unfortunately, some big companies aren't even testing to see if their software can display "hello" on ubiquitous video cards either. (Shareware makers may get $10 for every $10,000 and one year spent on each software and hence do worse, but at least we don't have to worry about the tax man.) For advanced users whose editors (or ascii word processors) can add any control codes in text: Chr(8), chr(5), chr(1), chr(7) makes all text after this codes to the end of the line as white letter on black (amber on black using amber monitor, green on black using green monitor etc). Chr(8), chr(5), chr(1), chr(112) makes it black letter on white background. By changing the last code (chr(7) and chr(112)) to other values, different areas of the text can be high-lighted in other colors when a color monitor is used. Chr(8) is control-H or ^S, so if you used the Screen option to change it to something else, you must use that character. For example, if you used S33, then the above must be chr(33), chr(5), chr(1), chr(7) and chr(33), chr(5), chr(1), chr(112). In order to operate correctly, the form feed should be on the very left most column. Do not place it anywhere else. You can define as many as 255 pages such as these to be used as is, or made into pop up "subroutines" which are called by these. (up to eight levels in total supported.) This version does not support overlays, and for compatibility with future versions of TXTRUN, you should keep your text files to under 40,000 bytes each. (TXTRUN will not run if your text file is larger than 40,000 bytes or if the .EDT file is larger than 45,000 bytes.) Please read the document file TXTRUN.DOC for more ordered explanation on the features here. The TXTRUN.EXE itself displays extensive context sensitive help if you deliberately don't type the required values for each optional parameter. The following page has nothing. It only shows that TXTRUN handles such situations correctly, though it doesn't mean that TXTRUN always works correctly: If you think that any bug is unforgivable, try figuring out how big two to the power of 700 is. That's about the number of decisions this program was written to handle. (and is the reason why a bridge can be guaranteed to stand, but a software can never be guaranteed to be bug-free) This is the last page here. The form feed code (chr(12)) can be changed to anything else if your editor cannot insert it into your text, by using the F### option. Its between F1 and F255, not including F13 ( code), F10 ( code) or F___ where "___" is whatever code the ^S screen controller, code is set for (default ^S or chr(19)). If your editor cannot handle extended ascii codes, do not use chr(128) - chr(255). The "extended ascii" codes are something IBM decided to add for its PC series of computers. These documents and texts never use them or control codes chr(1) - chr(31) for maximum compatibility with as many editors/word-processor-softwares as possible. As a result, "^S" above is one code representing the control key and the letter "S" combination, not the caret "^" character followed by capital "S". There should be NO form feed (chr(12)) on the very last page, ============ == ========= and the very last line should end with as well. (this text does not have an at the end, but TXTRUN compensates for it, as it does to many things, but it's still a good practice to put an )